In embedded multi-processor systems, communication or data exchange between several processing units is typically realized by any standard type of network technology based on various bus architectures. The most common bus topologies are denoted as straight bus topology, ring bus topology, or star topology. In the straight bus topology, the communication bus connecting several processing units can be represented as a single line to which each of the processing units is separately connected.
Communication and data exchange between single processing units is provided by the straight bus. Access to the common bus is controlled via bus controller and arbiter modules belonging to each processing unit. Typically, transmission of a message from a processing unit is only possible when the processing unit has a bus grant. The assignment of bus grants to various processing units depends on data transfer requests of the single processing unit as well as a potential message priority or urgency identifier.
A ring topology of a network connecting a plurality of processing units is based on the same technique as the straight bus system. Here, the bus system connecting the several processing units can be represented as a closed ring instead of a straight line. The communication and data transfer between the single processing units is based on the same technique of requesting and assigning a bus grant to a determined processing unit. Networks based on the straight bus and the ring bus topology are widely employed as, for example, Ethernet or token ring networks. They are very easy to realize, and, due to their high volume production, they are very attractive in cost as well.
Nevertheless, the straight bus and the ring bus topology have a common disadvantage, which is that they have a so-called single point of failure. When the straight bus or the ring bus are interrupted for any reason at a single point, the communication between all participants on the network will be disabled. Hence, the data transfer and communication of the entire network will break down. Under conditions such as extreme temperatures or extreme mechanical stress, which may be likely to occur in the automotive or industrial manufacturing environment, the long-term reliability of a straight bus or a ring bus system network cannot be guaranteed.
In a star topology, the single processing units are each connected to a central switch. In principle this topology is less sensitive to system failure. When, for example, a single connection between a processing unit and the central switch is discontinued, the remaining system maintains its functionality. However, in this topology the central switch represents a single point of failure. When the central switch fails, the entire communication of the network breaks down.
In order to circumvent single point failures and their disadvantages, fault tolerant techniques can in principle be implemented, which, unfortunately, increase implementation efforts and costs. Such fault tolerant implementations can be achieved by using massive redundancy and high performance micro processor systems for performing extensive re-routing calculations.
Common network architectures and topologies often have a limited bandwidth, and therefore introduce bottle necks that limit the overall system communication capabilities. Long-term reliability and fault tolerance functions are especially difficult to implement, and substantially increase the total cost of the network.